跳到主要内容

使用 QQ 引擎插件

白鹭引擎插件使用说明

什么是引擎插件

我们发布QQ小游戏的时候,里面会带有 egret.min.js eui.min.js 之类的库文件。玩家每次打开一个小游戏,都要重复的下载这些文件。

现在我们把白鹭引擎做成了插件, 5.2.x 系列的所有版本都上传到了QQ服务器上。开发者只要在项目里进行配置,就可以使用远端的插件,不使用本地的引擎文件。

这样的好处是什么呢?如果一个玩家玩了 A 游戏,里面使用了 5.2.20 版本的引擎插件。然后他又玩了 B 游戏,如果 B 游戏的引擎插件版本和 A 游戏一致,那么这个插件就不需要重新下载。这样就可以提高游戏的打开速度,获得更好的用户体验。

白鹭引擎插件使用和调试环境

  • 白鹭引擎 5.2.32 版本
  • 使用QQ开发者工具Nightly Build版版本(>=Ver 0.1.29-beta.42)
  • 在QQ小游戏管理后台,设置基础库最低版本 1.8.0。使用了插件分离的小游戏,在console日志中会输出:plugin ***** inject success/fail!![](./使用 QQ 引擎插件_files/p0.png)

注意

  • 目前一个APPID,只支持引用一个插件
  • 目前支持整包小游戏使用插件,以及分包小游戏的主包使用插件

白鹭引擎插件使用方法

1.在 Egret Launcher 里下载引擎 5.2.32 版本,使用该版本创建一个游戏项目 2.打开项目中的 scripts/config.qqgame.ts 文件,将 useQQPlugin 变量改为 true,在发布成 QQ 小游戏后会开启插件功能。设置为 false,将关闭插件功能。

老项目升级:

在老项目中执行 egret upgrade --egretversion 5.2.32 后会把项目升级成支持插件的版本。

使用其他版本的引擎:

如果您的项目不想使用最新的 5.2.32 版本 ,要使用其他版本,例如 5.2.16 之类的引擎,那么可以做如下操作:

1.使用最新版引擎 5.2.32 创建一个新项目,把这 3 个文件拷贝到老项目里替换原有文件。 ![](./使用 QQ 引擎插件_files/p1.png)

2.在老项目根目录的 egretProperties.json 里,把 compilerVersion 编译器版本改成 5.2.32。比如在本示例中,引擎代码还是 5.2.16 的,但是编译脚本使用 5.2.32,这样就能支持把游戏发布成开启微信插件的形式了。

![](./使用 QQ 引擎插件_files/p2.png)

FAQ

  • 问:引擎插件里都包含哪些库?
  • 答:包含白鹭引擎官方提供的 7 个库,注意:只包含发布版的 xx.min.js, 不包含调试版的xx.js。具体的文件列表如下:
egret.min.js
eui.min.js
assetsmanager.min.js
dragonBones.min.js
game.min.js
socket.min.js
tween.min.js

  • 问:我对引擎做了修改,还可以使用远程插件吗
  • 答:远程插件是由白鹭官方上传到QQ后台,您自己在本地的修改不会生效。